-- Based on revision 810ff3edd145
-- http://code.google.com/p/lslforge/source/browse/lslforge/haskell/src/Language/Lsl/Internal/FuncSigs.hs?spec=svn2621f419ec07347a14bcb1df0649e46e711b4685&r=810ff3edd1459090ef516ff24cf908a060d347fc
module Language.Lsl.Internal.FuncSigs(
    funcDescriptions,
    funcMeta,
    funcSigs,
    findSig,
    convertArgs) where

import Data.List(find)
import Language.Lsl.Internal.Type(LSLType(..), convertValues,LSLValue)

-- TODO: import real info into funcMeta, and derive funcSigs from that
funcMeta :: [(String,LSLType,[(String,LSLType)],String)]
funcMeta =
    let dummyNames = zipWith (++) (repeat "arg") (map show [1..])
        sig2Meta (name,rt,args) = 
            let (argNames,description) = case lookup name funcDescriptions of
                    Nothing -> (dummyNames,"no description")
                    Just (names,desc) -> (names ++ dummyNames,desc)
            in (name, rt,zip argNames args,description)
    in map sig2Meta funcSigs
        
findSig name = find (\ (fname,_,_) -> name == fname) funcSigs

convertArgs :: RealFrac a => String -> [LSLValue a] -> [LSLValue a]
convertArgs name args = case findSig name of
    Nothing -> args
    Just (_,_,argTypes) -> convertValues argTypes args

funcSigs :: [(String,LSLType,[LSLType])]
-- Generated by LSL2 Derived Files Generator. Database version: 0.0.20140116001; output module version: 0.0.20130817000
funcSigs = [
    ("llAbs",LLInteger,[LLInteger]),
    ("llAcos",LLFloat,[LLFloat]),
    ("llAddToLandBanList",LLVoid,[LLKey,LLFloat]),
    ("llAddToLandPassList",LLVoid,[LLKey,LLFloat]),
    ("llAdjustSoundVolume",LLVoid,[LLFloat]),
    ("llAllowInventoryDrop",LLVoid,[LLInteger]),
    ("llAngleBetween",LLFloat,[LLRot,LLRot]),
    ("llApplyImpulse",LLVoid,[LLVector,LLInteger]),
    ("llApplyRotationalImpulse",LLVoid,[LLVector,LLInteger]),
    ("llAsin",LLFloat,[LLFloat]),
    ("llAtan2",LLFloat,[LLFloat,LLFloat]),
    ("llAttachToAvatar",LLVoid,[LLInteger]),
    ("llAttachToAvatarTemp",LLVoid,[LLInteger]),
    ("llAvatarOnLinkSitTarget",LLKey,[LLInteger]),
    ("llAvatarOnSitTarget",LLKey,[]),
    ("llAxes2Rot",LLRot,[LLVector,LLVector,LLVector]),
    ("llAxisAngle2Rot",LLRot,[LLVector,LLFloat]),
    ("llBase64ToInteger",LLInteger,[LLString]),
    ("llBase64ToString",LLString,[LLString]),
    ("llBreakAllLinks",LLVoid,[]),
    ("llBreakLink",LLVoid,[LLInteger]),
    ("llCSV2List",LLList,[LLString]),
    ("llCastRay",LLList,[LLVector,LLVector,LLList]),
    ("llCeil",LLInteger,[LLFloat]),
    ("llClearCameraParams",LLVoid,[]),
    ("llClearLinkMedia",LLInteger,[LLInteger,LLInteger]),
    ("llClearPrimMedia",LLInteger,[LLInteger]),
    ("llCloseRemoteDataChannel",LLVoid,[LLKey]),
    ("llCloud",LLFloat,[LLVector]),
    ("llCollisionFilter",LLVoid,[LLString,LLKey,LLInteger]),
    ("llCollisionSound",LLVoid,[LLString,LLFloat]),
    ("llCollisionSprite",LLVoid,[LLString]),
    ("llCos",LLFloat,[LLFloat]),
    ("llCreateCharacter",LLVoid,[LLList]),
    ("llCreateLink",LLVoid,[LLKey,LLInteger]),
    ("llDeleteCharacter",LLVoid,[]),
    ("llDeleteSubList",LLList,[LLList,LLInteger,LLInteger]),
    ("llDeleteSubString",LLString,[LLString,LLInteger,LLInteger]),
    ("llDetachFromAvatar",LLVoid,[]),
    ("llDetectedGrab",LLVector,[LLInteger]),
    ("llDetectedGroup",LLInteger,[LLInteger]),
    ("llDetectedKey",LLKey,[LLInteger]),
    ("llDetectedLinkNumber",LLInteger,[LLInteger]),
    ("llDetectedName",LLString,[LLInteger]),
    ("llDetectedOwner",LLKey,[LLInteger]),
    ("llDetectedPos",LLVector,[LLInteger]),
    ("llDetectedRot",LLRot,[LLInteger]),
    ("llDetectedTouchBinormal",LLVector,[LLInteger]),
    ("llDetectedTouchFace",LLInteger,[LLInteger]),
    ("llDetectedTouchNormal",LLVector,[LLInteger]),
    ("llDetectedTouchPos",LLVector,[LLInteger]),
    ("llDetectedTouchST",LLVector,[LLInteger]),
    ("llDetectedTouchUV",LLVector,[LLInteger]),
    ("llDetectedType",LLInteger,[LLInteger]),
    ("llDetectedVel",LLVector,[LLInteger]),
    ("llDialog",LLVoid,[LLKey,LLString,LLList,LLInteger]),
    ("llDie",LLVoid,[]),
    ("llDumpList2String",LLString,[LLList,LLString]),
    ("llEdgeOfWorld",LLInteger,[LLVector,LLVector]),
    ("llEjectFromLand",LLVoid,[LLKey]),
    ("llEmail",LLVoid,[LLString,LLString,LLString]),
    ("llEscapeURL",LLString,[LLString]),
    ("llEuler2Rot",LLRot,[LLVector]),
    ("llEvade",LLVoid,[LLKey,LLList]),
    ("llExecCharacterCmd",LLVoid,[LLInteger,LLList]),
    ("llFabs",LLFloat,[LLFloat]),
    ("llFleeFrom",LLVoid,[LLVector,LLFloat,LLList]),
    ("llFloor",LLInteger,[LLFloat]),
    ("llForceMouselook",LLVoid,[LLInteger]),
    ("llFrand",LLFloat,[LLFloat]),
    ("llGenerateKey",LLKey,[]),
    ("llGetAccel",LLVector,[]),
    ("llGetAgentInfo",LLInteger,[LLKey]),
    ("llGetAgentLanguage",LLString,[LLKey]),
    ("llGetAgentList",LLList,[LLInteger,LLList]),
    ("llGetAgentSize",LLVector,[LLKey]),
    ("llGetAlpha",LLFloat,[LLInteger]),
    ("llGetAndResetTime",LLFloat,[]),
    ("llGetAnimation",LLString,[LLKey]),
    ("llGetAnimationList",LLList,[LLKey]),
    ("llGetAnimationOverride",LLString,[LLString]),
    ("llGetAttached",LLInteger,[]),
    ("llGetBoundingBox",LLList,[LLKey]),
    ("llGetCameraPos",LLVector,[]),
    ("llGetCameraRot",LLRot,[]),
    ("llGetCenterOfMass",LLVector,[]),
    ("llGetClosestNavPoint",LLList,[LLVector,LLList]),
    ("llGetColor",LLVector,[LLInteger]),
    ("llGetCreator",LLKey,[]),
    ("llGetDate",LLString,[]),
    ("llGetDisplayName",LLString,[LLKey]),
    ("llGetEnergy",LLFloat,[]),
    ("llGetEnv",LLString,[LLString]),
    ("llGetForce",LLVector,[]),
    ("llGetFreeMemory",LLInteger,[]),
    ("llGetFreeURLs",LLInteger,[]),
    ("llGetGMTclock",LLFloat,[]),
    ("llGetGeometricCenter",LLVector,[]),
    ("llGetHTTPHeader",LLString,[LLKey,LLString]),
    ("llGetInventoryCreator",LLKey,[LLString]),
    ("llGetInventoryKey",LLKey,[LLString]),
    ("llGetInventoryName",LLString,[LLInteger,LLInteger]),
    ("llGetInventoryNumber",LLInteger,[LLInteger]),
    ("llGetInventoryPermMask",LLInteger,[LLString,LLInteger]),
    ("llGetInventoryType",LLInteger,[LLString]),
    ("llGetKey",LLKey,[]),
    ("llGetLandOwnerAt",LLKey,[LLVector]),
    ("llGetLinkKey",LLKey,[LLInteger]),
    ("llGetLinkMedia",LLList,[LLInteger,LLInteger,LLList]),
    ("llGetLinkName",LLString,[LLInteger]),
    ("llGetLinkNumber",LLInteger,[]),
    ("llGetLinkNumberOfSides",LLInteger,[LLInteger]),
    ("llGetLinkPrimitiveParams",LLList,[LLInteger,LLList]),
    ("llGetListEntryType",LLInteger,[LLList,LLInteger]),
    ("llGetListLength",LLInteger,[LLList]),
    ("llGetLocalPos",LLVector,[]),
    ("llGetLocalRot",LLRot,[]),
    ("llGetMass",LLFloat,[]),
    ("llGetMassMKS",LLFloat,[]),
    ("llGetMaxScaleFactor",LLFloat,[]),
    ("llGetMemoryLimit",LLInteger,[]),
    ("llGetMinScaleFactor",LLFloat,[]),
    ("llGetNextEmail",LLVoid,[LLString,LLString]),
    ("llGetNotecardLine",LLKey,[LLString,LLInteger]),
    ("llGetNumberOfNotecardLines",LLKey,[LLString]),
    ("llGetNumberOfPrims",LLInteger,[]),
    ("llGetNumberOfSides",LLInteger,[]),
    ("llGetObjectDesc",LLString,[]),
    ("llGetObjectDetails",LLList,[LLKey,LLList]),
    ("llGetObjectMass",LLFloat,[LLKey]),
    ("llGetObjectName",LLString,[]),
    ("llGetObjectPermMask",LLInteger,[LLInteger]),
    ("llGetObjectPrimCount",LLInteger,[LLKey]),
    ("llGetOmega",LLVector,[]),
    ("llGetOwner",LLKey,[]),
    ("llGetOwnerKey",LLKey,[LLKey]),
    ("llGetParcelDetails",LLList,[LLVector,LLList]),
    ("llGetParcelFlags",LLInteger,[LLVector]),
    ("llGetParcelMaxPrims",LLInteger,[LLVector,LLInteger]),
    ("llGetParcelMusicURL",LLString,[]),
    ("llGetParcelPrimCount",LLInteger,[LLVector,LLInteger,LLInteger]),
    ("llGetParcelPrimOwners",LLList,[LLVector]),
    ("llGetPermissions",LLInteger,[]),
    ("llGetPermissionsKey",LLKey,[]),
    ("llGetPhysicsMaterial",LLList,[]),
    ("llGetPos",LLVector,[]),
    ("llGetPrimMediaParams",LLList,[LLInteger,LLList]),
    ("llGetPrimitiveParams",LLList,[LLList]),
    ("llGetRegionAgentCount",LLInteger,[]),
    ("llGetRegionCorner",LLVector,[]),
    ("llGetRegionFPS",LLFloat,[]),
    ("llGetRegionFlags",LLInteger,[]),
    ("llGetRegionName",LLString,[]),
    ("llGetRegionTimeDilation",LLFloat,[]),
    ("llGetRootPosition",LLVector,[]),
    ("llGetRootRotation",LLRot,[]),
    ("llGetRot",LLRot,[]),
    ("llGetSPMaxMemory",LLInteger,[]),
    ("llGetScale",LLVector,[]),
    ("llGetScriptName",LLString,[]),
    ("llGetScriptState",LLInteger,[LLString]),
    ("llGetSimStats",LLFloat,[LLInteger]),
    ("llGetSimulatorHostname",LLString,[]),
    ("llGetStartParameter",LLInteger,[]),
    ("llGetStaticPath",LLList,[LLVector,LLVector,LLFloat,LLList]),
    ("llGetStatus",LLInteger,[LLInteger]),
    ("llGetSubString",LLString,[LLString,LLInteger,LLInteger]),
    ("llGetSunDirection",LLVector,[]),
    ("llGetTexture",LLString,[LLInteger]),
    ("llGetTextureOffset",LLVector,[LLInteger]),
    ("llGetTextureRot",LLFloat,[LLInteger]),
    ("llGetTextureScale",LLVector,[LLInteger]),
    ("llGetTime",LLFloat,[]),
    ("llGetTimeOfDay",LLFloat,[]),
    ("llGetTimestamp",LLString,[]),
    ("llGetTorque",LLVector,[]),
    ("llGetUnixTime",LLInteger,[]),
    ("llGetUsedMemory",LLInteger,[]),
    ("llGetUsername",LLString,[LLKey]),
    ("llGetVel",LLVector,[]),
    ("llGetWallclock",LLFloat,[]),
    ("llGiveInventory",LLVoid,[LLKey,LLString]),
    ("llGiveInventoryList",LLVoid,[LLKey,LLString,LLList]),
    ("llGiveMoney",LLInteger,[LLKey,LLInteger]),
    ("llGround",LLFloat,[LLVector]),
    ("llGroundContour",LLVector,[LLVector]),
    ("llGroundNormal",LLVector,[LLVector]),
    ("llGroundRepel",LLVoid,[LLFloat,LLInteger,LLFloat]),
    ("llGroundSlope",LLVector,[LLVector]),
    ("llHTTPRequest",LLKey,[LLString,LLList,LLString]),
    ("llHTTPResponse",LLVoid,[LLKey,LLInteger,LLString]),
    ("llInsertString",LLString,[LLString,LLInteger,LLString]),
    ("llInstantMessage",LLVoid,[LLKey,LLString]),
    ("llIntegerToBase64",LLString,[LLInteger]),
    ("llJson2List",LLList,[LLString]),
    ("llJsonGetValue",LLString,[LLString,LLList]),
    ("llJsonSetValue",LLString,[LLString,LLList,LLString]),
    ("llJsonValueType",LLString,[LLString,LLList]),
    ("llKey2Name",LLString,[LLKey]),
    ("llLinkParticleSystem",LLVoid,[LLInteger,LLList]),
    ("llLinkSitTarget",LLVoid,[LLInteger,LLVector,LLRot]),
    ("llList2CSV",LLString,[LLList]),
    ("llList2Float",LLFloat,[LLList,LLInteger]),
    ("llList2Integer",LLInteger,[LLList,LLInteger]),
    ("llList2Json",LLString,[LLString,LLList]),
    ("llList2Key",LLKey,[LLList,LLInteger]),
    ("llList2List",LLList,[LLList,LLInteger,LLInteger]),
    ("llList2ListStrided",LLList,[LLList,LLInteger,LLInteger,LLInteger]),
    ("llList2Rot",LLRot,[LLList,LLInteger]),
    ("llList2String",LLString,[LLList,LLInteger]),
    ("llList2Vector",LLVector,[LLList,LLInteger]),
    ("llListFindList",LLInteger,[LLList,LLList]),
    ("llListInsertList",LLList,[LLList,LLList,LLInteger]),
    ("llListRandomize",LLList,[LLList,LLInteger]),
    ("llListReplaceList",LLList,[LLList,LLList,LLInteger,LLInteger]),
    ("llListSort",LLList,[LLList,LLInteger,LLInteger]),
    ("llListStatistics",LLFloat,[LLInteger,LLList]),
    ("llListen",LLInteger,[LLInteger,LLString,LLKey,LLString]),
    ("llListenControl",LLVoid,[LLInteger,LLInteger]),
    ("llListenRemove",LLVoid,[LLInteger]),
    ("llLoadURL",LLVoid,[LLKey,LLString,LLString]),
    ("llLog",LLFloat,[LLFloat]),
    ("llLog10",LLFloat,[LLFloat]),
    ("llLookAt",LLVoid,[LLVector,LLFloat,LLFloat]),
    ("llLoopSound",LLVoid,[LLString,LLFloat]),
    ("llLoopSoundMaster",LLVoid,[LLString,LLFloat]),
    ("llLoopSoundSlave",LLVoid,[LLString,LLFloat]),
    ("llMD5String",LLString,[LLString,LLInteger]),
    ("llMakeExplosion",LLVoid,[LLInteger,LLFloat,LLFloat,LLFloat,LLFloat,LLString,LLVector]),
    ("llMakeFire",LLVoid,[LLInteger,LLFloat,LLFloat,LLFloat,LLFloat,LLString,LLVector]),
    ("llMakeFountain",LLVoid,[LLInteger,LLFloat,LLFloat,LLFloat,LLFloat,LLInteger,LLString,LLVector,LLFloat]),
    ("llMakeSmoke",LLVoid,[LLInteger,LLFloat,LLFloat,LLFloat,LLFloat,LLString,LLVector]),
    ("llManageEstateAccess",LLInteger,[LLInteger,LLKey]),
    ("llMapDestination",LLVoid,[LLString,LLVector,LLVector]),
    ("llMessageLinked",LLVoid,[LLInteger,LLInteger,LLString,LLKey]),
    ("llMinEventDelay",LLVoid,[LLFloat]),
    ("llModPow",LLInteger,[LLInteger,LLInteger,LLInteger]),
    ("llModifyLand",LLVoid,[LLInteger,LLInteger]),
    ("llMoveToTarget",LLVoid,[LLVector,LLFloat]),
    ("llNavigateTo",LLVoid,[LLVector,LLList]),
    ("llOffsetTexture",LLVoid,[LLFloat,LLFloat,LLInteger]),
    ("llOpenRemoteDataChannel",LLVoid,[]),
    ("llOverMyLand",LLInteger,[LLKey]),
    ("llOwnerSay",LLVoid,[LLString]),
    ("llParcelMediaCommandList",LLVoid,[LLList]),
    ("llParcelMediaQuery",LLList,[LLList]),
    ("llParseString2List",LLList,[LLString,LLList,LLList]),
    ("llParseStringKeepNulls",LLList,[LLString,LLList,LLList]),
    ("llParticleSystem",LLVoid,[LLList]),
    ("llPassCollisions",LLVoid,[LLInteger]),
    ("llPassTouches",LLVoid,[LLInteger]),
    ("llPatrolPoints",LLVoid,[LLList,LLList]),
    ("llPlaySound",LLVoid,[LLString,LLFloat]),
    ("llPlaySoundSlave",LLVoid,[LLString,LLFloat]),
    ("llPointAt",LLVoid,[LLVector]),
    ("llPow",LLFloat,[LLFloat,LLFloat]),
    ("llPreloadSound",LLVoid,[LLString]),
    ("llPursue",LLVoid,[LLKey,LLList]),
    ("llPushObject",LLVoid,[LLKey,LLVector,LLVector,LLInteger]),
    ("llRefreshPrimURL",LLVoid,[]),
    ("llRegionSay",LLVoid,[LLInteger,LLString]),
    ("llRegionSayTo",LLVoid,[LLKey,LLInteger,LLString]),
    ("llReleaseCamera",LLVoid,[LLKey]),
    ("llReleaseControls",LLVoid,[]),
    ("llReleaseURL",LLVoid,[LLString]),
    ("llRemoteDataReply",LLVoid,[LLKey,LLKey,LLString,LLInteger]),
    ("llRemoteDataSetRegion",LLVoid,[]),
    ("llRemoteLoadScript",LLVoid,[LLKey,LLString,LLInteger,LLInteger]),
    ("llRemoteLoadScriptPin",LLVoid,[LLKey,LLString,LLInteger,LLInteger,LLInteger]),
    ("llRemoveFromLandBanList",LLVoid,[LLKey]),
    ("llRemoveFromLandPassList",LLVoid,[LLKey]),
    ("llRemoveInventory",LLVoid,[LLString]),
    ("llRemoveVehicleFlags",LLVoid,[LLInteger]),
    ("llRequestAgentData",LLKey,[LLKey,LLInteger]),
    ("llRequestDisplayName",LLKey,[LLKey]),
    ("llRequestInventoryData",LLKey,[LLString]),
    ("llRequestPermissions",LLVoid,[LLKey,LLInteger]),
    ("llRequestSecureURL",LLKey,[]),
    ("llRequestSimulatorData",LLKey,[LLString,LLInteger]),
    ("llRequestURL",LLKey,[]),
    ("llRequestUsername",LLKey,[LLKey]),
    ("llResetAnimationOverride",LLVoid,[LLString]),
    ("llResetLandBanList",LLVoid,[]),
    ("llResetLandPassList",LLVoid,[]),
    ("llResetOtherScript",LLVoid,[LLString]),
    ("llResetScript",LLVoid,[]),
    ("llResetTime",LLVoid,[]),
    ("llReturnObjectsByID",LLInteger,[LLList]),
    ("llReturnObjectsByOwner",LLInteger,[LLKey,LLInteger]),
    ("llRezAtRoot",LLVoid,[LLString,LLVector,LLVector,LLRot,LLInteger]),
    ("llRezObject",LLVoid,[LLString,LLVector,LLVector,LLRot,LLInteger]),
    ("llRot2Angle",LLFloat,[LLRot]),
    ("llRot2Axis",LLVector,[LLRot]),
    ("llRot2Euler",LLVector,[LLRot]),
    ("llRot2Fwd",LLVector,[LLRot]),
    ("llRot2Left",LLVector,[LLRot]),
    ("llRot2Up",LLVector,[LLRot]),
    ("llRotBetween",LLRot,[LLVector,LLVector]),
    ("llRotLookAt",LLVoid,[LLRot,LLFloat,LLFloat]),
    ("llRotTarget",LLInteger,[LLRot,LLFloat]),
    ("llRotTargetRemove",LLVoid,[LLInteger]),
    ("llRotateTexture",LLVoid,[LLFloat,LLInteger]),
    ("llRound",LLInteger,[LLFloat]),
    ("llSHA1String",LLString,[LLString]),
    ("llSameGroup",LLInteger,[LLKey]),
    ("llSay",LLVoid,[LLInteger,LLString]),
    ("llScaleByFactor",LLInteger,[LLFloat]),
    ("llScaleTexture",LLVoid,[LLFloat,LLFloat,LLInteger]),
    ("llScriptDanger",LLInteger,[LLVector]),
    ("llScriptProfiler",LLVoid,[LLInteger]),
    ("llSendRemoteData",LLKey,[LLKey,LLString,LLInteger,LLString]),
    ("llSensor",LLVoid,[LLString,LLKey,LLInteger,LLFloat,LLFloat]),
    ("llSensorRemove",LLVoid,[]),
    ("llSensorRepeat",LLVoid,[LLString,LLKey,LLInteger,LLFloat,LLFloat,LLFloat]),
    ("llSetAlpha",LLVoid,[LLFloat,LLInteger]),
    ("llSetAngularVelocity",LLVoid,[LLVector,LLInteger]),
    ("llSetAnimationOverride",LLVoid,[LLString,LLString]),
    ("llSetBuoyancy",LLVoid,[LLFloat]),
    ("llSetCameraAtOffset",LLVoid,[LLVector]),
    ("llSetCameraEyeOffset",LLVoid,[LLVector]),
    ("llSetCameraParams",LLVoid,[LLList]),
    ("llSetClickAction",LLVoid,[LLInteger]),
    ("llSetColor",LLVoid,[LLVector,LLInteger]),
    ("llSetContentType",LLVoid,[LLKey,LLInteger]),
    ("llSetDamage",LLVoid,[LLFloat]),
    ("llSetForce",LLVoid,[LLVector,LLInteger]),
    ("llSetForceAndTorque",LLVoid,[LLVector,LLVector,LLInteger]),
    ("llSetHoverHeight",LLVoid,[LLFloat,LLInteger,LLFloat]),
    ("llSetKeyframedMotion",LLVoid,[LLList,LLList]),
    ("llSetLinkAlpha",LLVoid,[LLInteger,LLFloat,LLInteger]),
    ("llSetLinkCamera",LLVoid,[LLInteger,LLVector,LLVector]),
    ("llSetLinkColor",LLVoid,[LLInteger,LLVector,LLInteger]),
    ("llSetLinkMedia",LLInteger,[LLInteger,LLInteger,LLList]),
    ("llSetLinkPrimitiveParams",LLVoid,[LLInteger,LLList]),
    ("llSetLinkPrimitiveParamsFast",LLVoid,[LLInteger,LLList]),
    ("llSetLinkTexture",LLVoid,[LLInteger,LLString,LLInteger]),
    ("llSetLinkTextureAnim",LLVoid,[LLInteger,LLInteger,LLInteger,LLInteger,LLInteger,LLFloat,LLFloat,LLFloat]),
    ("llSetLocalRot",LLVoid,[LLRot]),
    ("llSetMemoryLimit",LLInteger,[LLInteger]),
    ("llSetObjectDesc",LLVoid,[LLString]),
    ("llSetObjectName",LLVoid,[LLString]),
    ("llSetParcelMusicURL",LLVoid,[LLString]),
    ("llSetPayPrice",LLVoid,[LLInteger,LLList]),
    ("llSetPhysicsMaterial",LLVoid,[LLInteger,LLFloat,LLFloat,LLFloat,LLFloat]),
    ("llSetPos",LLVoid,[LLVector]),
    ("llSetPrimMediaParams",LLInteger,[LLInteger,LLList]),
    ("llSetPrimURL",LLVoid,[LLString]),
    ("llSetPrimitiveParams",LLVoid,[LLList]),
    ("llSetRegionPos",LLInteger,[LLVector]),
    ("llSetRemoteScriptAccessPin",LLVoid,[LLInteger]),
    ("llSetRot",LLVoid,[LLRot]),
    ("llSetScale",LLVoid,[LLVector]),
    ("llSetScriptState",LLVoid,[LLString,LLInteger]),
    ("llSetSitText",LLVoid,[LLString]),
    ("llSetSoundQueueing",LLVoid,[LLInteger]),
    ("llSetSoundRadius",LLVoid,[LLFloat]),
    ("llSetStatus",LLVoid,[LLInteger,LLInteger]),
    ("llSetText",LLVoid,[LLString,LLVector,LLFloat]),
    ("llSetTexture",LLVoid,[LLString,LLInteger]),
    ("llSetTextureAnim",LLVoid,[LLInteger,LLInteger,LLInteger,LLInteger,LLFloat,LLFloat,LLFloat]),
    ("llSetTimerEvent",LLVoid,[LLFloat]),
    ("llSetTorque",LLVoid,[LLVector,LLInteger]),
    ("llSetTouchText",LLVoid,[LLString]),
    ("llSetVehicleFlags",LLVoid,[LLInteger]),
    ("llSetVehicleFloatParam",LLVoid,[LLInteger,LLFloat]),
    ("llSetVehicleRotationParam",LLVoid,[LLInteger,LLRot]),
    ("llSetVehicleType",LLVoid,[LLInteger]),
    ("llSetVehicleVectorParam",LLVoid,[LLInteger,LLVector]),
    ("llSetVelocity",LLVoid,[LLVector,LLInteger]),
    ("llShout",LLVoid,[LLInteger,LLString]),
    ("llSin",LLFloat,[LLFloat]),
    ("llSitTarget",LLVoid,[LLVector,LLRot]),
    ("llSleep",LLVoid,[LLFloat]),
    ("llSound",LLVoid,[LLString,LLFloat,LLInteger,LLInteger]),
    ("llSoundPreload",LLVoid,[LLString]),
    ("llSqrt",LLFloat,[LLFloat]),
    ("llStartAnimation",LLVoid,[LLString]),
    ("llStopAnimation",LLVoid,[LLString]),
    ("llStopHover",LLVoid,[]),
    ("llStopLookAt",LLVoid,[]),
    ("llStopMoveToTarget",LLVoid,[]),
    ("llStopPointAt",LLVoid,[]),
    ("llStopSound",LLVoid,[]),
    ("llStringLength",LLInteger,[LLString]),
    ("llStringToBase64",LLString,[LLString]),
    ("llStringTrim",LLString,[LLString,LLInteger]),
    ("llSubStringIndex",LLInteger,[LLString,LLString]),
    ("llTakeCamera",LLVoid,[LLKey]),
    ("llTakeControls",LLVoid,[LLInteger,LLInteger,LLInteger]),
    ("llTan",LLFloat,[LLFloat]),
    ("llTarget",LLInteger,[LLVector,LLFloat]),
    ("llTargetOmega",LLVoid,[LLVector,LLFloat,LLFloat]),
    ("llTargetRemove",LLVoid,[LLInteger]),
    ("llTeleportAgent",LLVoid,[LLKey,LLString,LLVector,LLVector]),
    ("llTeleportAgentGlobalCoords",LLVoid,[LLKey,LLVector,LLVector,LLVector]),
    ("llTeleportAgentHome",LLVoid,[LLKey]),
    ("llTextBox",LLVoid,[LLKey,LLString,LLInteger]),
    ("llToLower",LLString,[LLString]),
    ("llToUpper",LLString,[LLString]),
    ("llTransferLindenDollars",LLKey,[LLKey,LLInteger]),
    ("llTriggerSound",LLVoid,[LLString,LLFloat]),
    ("llTriggerSoundLimited",LLVoid,[LLString,LLFloat,LLVector,LLVector]),
    ("llUnSit",LLVoid,[LLKey]),
    ("llUnescapeURL",LLString,[LLString]),
    ("llUpdateCharacter",LLVoid,[LLList]),
    ("llVecDist",LLFloat,[LLVector,LLVector]),
    ("llVecMag",LLFloat,[LLVector]),
    ("llVecNorm",LLVector,[LLVector]),
    ("llVolumeDetect",LLVoid,[LLInteger]),
    ("llWanderWithin",LLVoid,[LLVector,LLVector,LLList]),
    ("llWater",LLFloat,[LLVector]),
    ("llWhisper",LLVoid,[LLInteger,LLString]),
    ("llWind",LLVector,[LLVector]),
    ("llXorBase64",LLString,[LLString,LLString]),
    ("llXorBase64Strings",LLString,[LLString,LLString]),
    ("llXorBase64StringsCorrect",LLString,[LLString,LLString])]

funcDescriptions = [
    ("llAbs",(["val"],"Returns the positive version of val\n")),
    ("llAcos",(["val"],"Returns the arccosine in radians of val\n")),
    ("llAddToLandBanList",(["avatar","hours"],"Adds avatar to the land ban list for hours, or indefinitely if hours is 0\n")),
    ("llAddToLandPassList",(["avatar","hours"],"Adds avatar to the land pass list for hours, or indefinitely if hours is 0\n")),
    ("llAdjustSoundVolume",(["volume"],"Adjusts volume of attached sound (0.0 - 1.0)\n")),
    ("llAllowInventoryDrop",(["add"],"If add == TRUE, users without modify permissions can still drop inventory items onto a prim\n")),
    ("llAngleBetween",(["a","b"],"Returns angle between rotation a and b\n")),
    ("llApplyImpulse",(["force","local"],"Applies impulse to object (if the script is physical), in local coords if local == TRUE\n")),
    ("llApplyRotationalImpulse",(["force","local"],"Applies rotational impulse to object (if the script is physical), in local coords if local == TRUE\n")),
    ("llAsin",(["val"],"Returns the arcsine in radians of val\n")),
    ("llAtan2",(["y","x"],"Returns the arctangent2 of y, x\n")),
    ("llAttachToAvatar",(["attach_point"],"Attaches the object to the avatar who has granted permission to the script\n")),
    ("llAttachToAvatarTemp",(["attach_point"],"Attaches the object to the avatar who has granted permission to the script, with the exception that the object will not create new inventory for the user, and will disappear on detach or disconnect\n")),
    ("llAvatarOnLinkSitTarget",(["link"],"If an avatar is sitting on the sit target, return the avatar's key, NULL_KEY otherwise\n")),
    ("llAvatarOnSitTarget",([],"If an avatar is seated on the sit target, returns the avatar's key, otherwise NULL_KEY\n")),
    ("llAxes2Rot",(["fwd","left","up"],"Returns the rotation defined by the coordinate axes\n")),
    ("llAxisAngle2Rot",(["axis","angle"],"Returns the rotation that is a generated angle about axis\n")),
    ("llBase64ToInteger",(["str"],"Returns an integer that is the str Base64 decoded as a big endian integer\n")),
    ("llBase64ToString",(["str"],"Converts a Base64 string to a conventional string.\nIf the conversion creates any unprintable characters, they are converted to spaces.\n")),
    ("llBreakAllLinks",([],"Delinks all prims in the link set (requires that PERMISSION_CHANGE_LINKS be granted)\n")),
    ("llBreakLink",(["linknum"],"Delinks the prim with the given link number in a linked object set (requires that PERMISSION_CHANGE_LINKS be granted)\n")),
    ("llCSV2List",(["src"],"Creates a list from a string of comma separated values\n")),
    ("llCastRay",(["start","end","params"],"Casts a ray into the physics world from 'start' to 'end' and returns data according to details in params\n")),
    ("llCeil",(["val"],"Returns smallest integer value >= val\n")),
    ("llClearCameraParams",([],"Resets all camera parameters to default values and turns off scripted camera control\n")),
    ("llClearLinkMedia",(["link","face"],"Clears (deletes) the media and all params from the given face on linked prim\n")),
    ("llClearPrimMedia",(["face"],"Clears (deletes) the media and all params from the given face\n")),
    ("llCloseRemoteDataChannel",(["channel"],"Closes XML-RPC channel\n")),
    ("llCloud",(["offset"],"Returns the cloud density at the object position + offset.\nDEPRECATED - It always returns 0.0 now.\n")),
    ("llCollisionFilter",(["name","id","accept"],"Sets the collision filter, exclusively or inclusively. If accept == TRUE, only accept collisions with objects name and id (either is optional), otherwise with objects not name or id.\n")),
    ("llCollisionSound",(["impact_sound","impact_volume"],"Suppresses default collision sounds, replaces default impact sounds with impact_sound at the volume impact_volume\n")),
    ("llCollisionSprite",(["impact_sprite"],"Suppresses default collision sprites, replaces default impact sprite with impact_sprite (use an empty string to just suppress)\n")),
    ("llCos",(["theta"],"Returns the cosine of theta (theta in radians)\n")),
    ("llCreateCharacter",(["options"],"Convert linkset to AI Character which can navigate the world\n")),
    ("llCreateLink",(["target","parent"],"Attempts to link the script's object with the target (requires that PERMISSION_CHANGE_LINKS be granted). If parent == TRUE, then the script's object becomes the root.\n")),
    ("llDeleteCharacter",([],"Convert linkset from AI Character to Physics object\n")),
    ("llDeleteSubList",(["src","start","end"],"Removes the slice from start to end and returns the remainder of the list\n")),
    ("llDeleteSubString",(["src","start","end"],"Removes the indicated substring and returns the result\n")),
    ("llDetachFromAvatar",([],"Detaches object from avatar\n")),
    ("llDetectedGrab",(["number"],"Returns the grab offset of the user touching object (returns <0,0,0> if number is not a valid sensed object)\n")),
    ("llDetectedGroup",(["number"],"Returns TRUE if detected object is part of same group as owner\n")),
    ("llDetectedKey",(["number"],"Returns the key of detected object number (returns empty key if number is not a valid sensed object)\n")),
    ("llDetectedLinkNumber",(["number"],"Returns the link position of the triggered event for touches and collisions only\n")),
    ("llDetectedName",(["number"],"Returns the name of detected object number (returns empty string if number is not a valid sensed object)\n")),
    ("llDetectedOwner",(["number"],"Returns the key of detected object's owner (returns empty key if number is not a valid sensed object)\n")),
    ("llDetectedPos",(["number"],"Returns the position of detected object number (returns <0,0,0> if number is not a valid sensed object)\n")),
    ("llDetectedRot",(["number"],"Returns the rotation of detected object number (returns <0,0,0,1> if number is not a valid sensed object)\n")),
    ("llDetectedTouchBinormal",(["index"],"Returns the surface binormal for a triggered touch event\n")),
    ("llDetectedTouchFace",(["index"],"Returns the index of the face where the avatar clicked in a triggered touch event\n")),
    ("llDetectedTouchNormal",(["index"],"Returns the surface normal for a triggered touch event\n")),
    ("llDetectedTouchPos",(["index"],"Returns the position where the object was touched in a triggered touch event\n")),
    ("llDetectedTouchST",(["index"],"Returns the s and t coordinates in the first two components of a vector, for the surface coordinates where the prim was touched in a triggered touch event\n")),
    ("llDetectedTouchUV",(["index"],"Returns the u and v coordinates in the first two components of a vector, for the texture coordinates where the prim was touched in a triggered touch event\n")),
    ("llDetectedType",(["number"],"Returns the type (AGENT, ACTIVE, PASSIVE, SCRIPTED) of detected object (returns 0 if number is not a valid sensed object)\n")),
    ("llDetectedVel",(["number"],"Returns the velocity of detected object number (returns <0,0,0> if number is not a valid sensed object)\n")),
    ("llDialog",(["avatar","message","buttons","chat_channel"],"Shows a dialog box on the avatar's screen with a message and up to 12 buttons.\nIf a button is pressed, the avatar says the text of the button label on chat_channel.\n")),
    ("llDie",([],"Deletes the object\n")),
    ("llDumpList2String",(["src","separator"],"Returns the list in a single string, using separator between the entries\n")),
    ("llEdgeOfWorld",(["pos","dir"],"Checks to see whether the border hit by dir from pos is the edge of the world (has no neighboring region)\n")),
    ("llEjectFromLand",(["avatar"],"Ejects avatar from the parcel\n")),
    ("llEmail",(["address","subject","message"],"Sends an email to address with the subject and message\n")),
    ("llEscapeURL",(["url"],"Returns an escaped/encoded version of url, replacing spaces with %20 etc.\n")),
    ("llEuler2Rot",(["v"],"Returns the rotation representation of Euler Angles v\n")),
    ("llEvade",(["target","options"],"For AI Character: Evade a specified target\n")),
    ("llExecCharacterCmd",(["cmd","options"],"For AI Character: Execute a character command\n")),
    ("llFabs",(["val"],"Returns the positive version of val\n")),
    ("llFleeFrom",(["source","radius","options"],"For AI Character: Flee from a point\n")),
    ("llFloor",(["val"],"Returns largest integer value <= val\n")),
    ("llForceMouselook",(["mouselook"],"If mouselook is TRUE, any avatar that sits upon the prim will be forced into mouselook mode\n")),
    ("llFrand",(["mag"],"Returns a pseudo random number in the range [0,mag) or (mag,0]\n")),
    ("llGenerateKey",([],"Return a unique generated key\n")),
    ("llGetAccel",([],"Returns the acceleration of the object relative to the region's axes\n")),
    ("llGetAgentInfo",(["id"],"Returns an integer bitfield containing the agent information about id.\nReturns AGENT_FLYING, AGENT_ATTACHMENTS, AGENT_SCRIPTED, AGENT_SITTING, AGENT_ON_OBJECT, AGENT_MOUSELOOK, AGENT_AWAY, AGENT_BUSY, AGENT_TYPING, AGENT_CROUCHING, AGENT_ALWAYS_RUN, AGENT_WALKING and/or AGENT_IN_AIR.\n")),
    ("llGetAgentLanguage",(["avatar"],"Returns the language code of the preferred interface language of the avatar\n")),
    ("llGetAgentList",(["scope","options"],"Requests a list of agents currently in the region, limited by the scope parameter\n")),
    ("llGetAgentSize",(["id"],"If the avatar is in the same region, returns the size of the bounding box of the requested avatar by id, otherwise returns ZERO_VECTOR\n")),
    ("llGetAlpha",(["face"],"Returns the alpha of face\n")),
    ("llGetAndResetTime",([],"Returns the script time in seconds and then resets the script timer to zero\n")),
    ("llGetAnimation",(["id"],"Returns the name of the currently playing locomotion animation for avatar id\n")),
    ("llGetAnimationList",(["id"],"Returns a list of keys of playing animations for avatar described by id\n")),
    ("llGetAnimationOverride",(["anim_state"],"Get the name of the animation currently set for the given animation state. Requires either PERMISSION_OVERRIDE_ANIMATIONS or PERMISSION_TRIGGER_ANIMATION.\n")),
    ("llGetAttached",([],"Returns the object's attachment point, or 0 if not attached\n")),
    ("llGetBoundingBox",(["object"],"Returns the bounding box around the object (including any linked prims) relative to its root prim, in a list in the format [ (vector) min_corner, (vector) max_corner ]\n")),
    ("llGetCameraPos",([],"Returns the current camera position for the agent the task has permissions for\n")),
    ("llGetCameraRot",([],"Returns the current camera orientation for the agent the task has permissions for\n")),
    ("llGetCenterOfMass",([],"Returns the prim's center of mass (unless called from the root prim, where it returns the object's center of mass)\n")),
    ("llGetClosestNavPoint",(["point","options"],"For AI Character: Get the closest navigable point to the point provided\n")),
    ("llGetColor",(["face"],"Returns the color on face\n")),
    ("llGetCreator",([],"Returns a key for the creator of the prim\n")),
    ("llGetDate",([],"Returns the current date in the UTC time zone in the format YYYY-MM-DD\n")),
    ("llGetDisplayName",(["id"],"Returns the name of an avatar, iff the avatar is in the current simulator, and the name has been cached, otherwise the same as llGetUsername. Use llRequestDisplayName if you absolutely must have the display name.\n")),
    ("llGetEnergy",([],"Returns how much energy is in the object as a percentage of maximum\n")),
    ("llGetEnv",(["name"],"Returns a string with the requested data about the region\n")),
    ("llGetForce",([],"Returns the force (if the script is physical)\n")),
    ("llGetFreeMemory",([],"Returns the number of free bytes of memory the script can use\n")),
    ("llGetFreeURLs",([],"Returns the number of available URLs for the current script\n")),
    ("llGetGMTclock",([],"Returns the time in seconds since midnight GMT\n")),
    ("llGetGeometricCenter",([],"Returns the geometric center of the linked set the script is attached to\n")),
    ("llGetHTTPHeader",(["request_id","header"],"Returns the value for header for request_id\n")),
    ("llGetInventoryCreator",(["item"],"Returns a key for the creator of the inventory item\n")),
    ("llGetInventoryKey",(["name"],"Returns the key that is the UUID of the inventory name\n")),
    ("llGetInventoryName",(["type","number"],"Returns the name of the inventory item number of a given type\n")),
    ("llGetInventoryNumber",(["type"],"Returns the number of items of a given type (INVENTORY_* flag) in the prim's inventory\n")),
    ("llGetInventoryPermMask",(["item","mask"],"Returns the requested permission mask for the inventory item\n")),
    ("llGetInventoryType",(["name"],"Returns the type of the inventory item name\n")),
    ("llGetKey",([],"Returns the key of the prim the script is attached to\n")),
    ("llGetLandOwnerAt",(["pos"],"Returns the key of the land owner, returns NULL_KEY if public\n")),
    ("llGetLinkKey",(["linknumber"],"Returns the key of the linked prim linknumber\n")),
    ("llGetLinkMedia",(["link","face","params"],"Get the media params for a particular face on linked prim, given the desired list of names. Returns a list of values in the order requested. Returns an empty list if no media exists on the face.\n")),
    ("llGetLinkName",(["linknumber"],"Returns the name of linknumber in a link set\n")),
    ("llGetLinkNumber",([],"Returns the link number of the prim containing the script (0 means not linked, 1 the prim is the root, 2 the prim is the first child, etc)\n")),
    ("llGetLinkNumberOfSides",(["link"],"Returns the number of sides of the specified linked prim\n")),
    ("llGetLinkPrimitiveParams",(["linknumber","rules"],"Get primitive parameters for linknumber based on rules\n")),
    ("llGetListEntryType",(["src","index"],"Returns the type of the index entry in the list\n(TYPE_INTEGER, TYPE_FLOAT, TYPE_STRING, TYPE_KEY, TYPE_VECTOR, TYPE_ROTATION, or TYPE_INVALID if index is off list)\n")),
    ("llGetListLength",(["src"],"Returns the number of elements in the list\n")),
    ("llGetLocalPos",([],"Returns the position relative to the root\n")),
    ("llGetLocalRot",([],"Returns the rotation local to the root\n")),
    ("llGetMass",([],"Returns the mass of object that the script is attached to\n")),
    ("llGetMassMKS",([],"Returns the mass of the linkset in kilograms\n")),
    ("llGetMaxScaleFactor",([],"(No Description)\n")),
    ("llGetMemoryLimit",([],"Get the maximum memory a script can use.\nReturns the integer amount of memory the script can use in bytes.\n")),
    ("llGetMinScaleFactor",([],"(No Description)\n")),
    ("llGetNextEmail",(["address","subject"],"Gets the next waiting email that comes from address, with specified subject\n")),
    ("llGetNotecardLine",(["name","line"],"Returns line line of notecard name via the dataserver event\n")),
    ("llGetNumberOfNotecardLines",(["name"],"Returns number of lines in notecard name via the dataserver event (cast return value to integer)\n")),
    ("llGetNumberOfPrims",([],"Returns the number of prims in a link set the script is attached to\n")),
    ("llGetNumberOfSides",([],"Returns the number of faces (or sides) of the prim\n")),
    ("llGetObjectDesc",([],"Returns the description of the prim the script is attached to\n")),
    ("llGetObjectDetails",(["id","params"],"Returns the object details specified in params for the object with key id.\nParams are OBJECT_NAME, _DESC, _POS, _ROT, _VELOCITY, _OWNER, _GROUP, _CREATOR.\n")),
    ("llGetObjectMass",(["id"],"Returns the mass of the avatar or object in the region\n")),
    ("llGetObjectName",([],"Returns the name of the prim which the script is attached to\n")),
    ("llGetObjectPermMask",(["mask"],"Returns the requested permission mask for the root object the task is attached to\n")),
    ("llGetObjectPrimCount",(["object_id"],"Returns the total number of prims for an object in the region\n")),
    ("llGetOmega",([],"Returns the rotation velocity in radians per second\n")),
    ("llGetOwner",([],"Returns the object owner's UUID\n")),
    ("llGetOwnerKey",(["id"],"Returns the owner of object id\n")),
    ("llGetParcelDetails",(["pos","params"],"Returns the parcel details specified in params for the parcel at pos.\nParams is one or more of: PARCEL_DETAILS_NAME, _DESC, _OWNER, _GROUP, _AREA, _ID, _SEE_AVATARS.\n")),
    ("llGetParcelFlags",(["pos"],"Returns a mask of the parcel flags (PARCEL_FLAG_*) for the parcel that includes the point pos\n")),
    ("llGetParcelMaxPrims",(["pos","sim_wide"],"Returns the maximum number of prims allowed on the parcel at pos\n")),
    ("llGetParcelMusicURL",([],"Gets the streaming audio URL for the parcel of land on which the object is located\n")),
    ("llGetParcelPrimCount",(["pos","category","sim_wide"],"Returns the number of prims on the parcel at pos of the given category.\nCategories: PARCEL_COUNT_TOTAL, _OWNER, _GROUP, _OTHER, _SELECTED, _TEMP.\n")),
    ("llGetParcelPrimOwners",(["pos"],"Returns a list of all Residents who own objects on the parcel at pos and with individual prim counts.\nRequires owner-like permissions for the parcel.\n")),
    ("llGetPermissions",([],"Returns an integer bitfield with the permissions that have been granted\n")),
    ("llGetPermissionsKey",([],"Returns the key of the avatar that last granted permissions to the script\n")),
    ("llGetPhysicsMaterial",([],"Returns the gravity multiplier, restitution, friction, and density of the linkset as a list in that order\n")),
    ("llGetPos",([],"Returns the position of the task in region coordinates\n")),
    ("llGetPrimMediaParams",(["face","params"],"Returns the media params for a particular face on an object, given the desired list of names, in the order requested.\n(Returns an empty list if no media exists on the face.)\n")),
    ("llGetPrimitiveParams",(["params"],"Returns the primitive parameters specified in the params list\n")),
    ("llGetRegionAgentCount",([],"Returns the number of avatars in the region\n")),
    ("llGetRegionCorner",([],"Returns a vector in meters that is the global location of the south-west corner of the region which the object is in\n")),
    ("llGetRegionFPS",([],"Returns the mean region frames per second\n")),
    ("llGetRegionFlags",([],"Returns the region flags (REGION_FLAG_*) for the region the object is in\n")),
    ("llGetRegionName",([],"Returns the current region name\n")),
    ("llGetRegionTimeDilation",([],"Returns the current time dilation as a float between 0.0 (full dilation) and 1.0 (no dilation)\n")),
    ("llGetRootPosition",([],"Returns the position (in region coordinates) of the root prim of the object which the script is attached to\n")),
    ("llGetRootRotation",([],"Returns the rotation (relative to the region) of the root prim of the object which the script is attached to\n")),
    ("llGetRot",([],"Returns the rotation relative to the region's axes\n")),
    ("llGetSPMaxMemory",([],"Returns the maximum used memory for the current script. Only valid after using PROFILE_SCRIPT_MEMORY. Non-mono scripts always use 16k.\n")),
    ("llGetScale",([],"Returns the scale of the prim\n")),
    ("llGetScriptName",([],"Returns the name of the script that this function is used in\n")),
    ("llGetScriptState",(["name"],"Returns TRUE if the script name is running\n")),
    ("llGetSimStats",(["stat_type"],"Returns the value of a particular simulator statistic\n")),
    ("llGetSimulatorHostname",([],"Returns the hostname of the machine which the script is running on (same as string in viewer Help dialog)\n")),
    ("llGetStartParameter",([],"Returns an integer that is the script start/rez parameter\n")),
    ("llGetStaticPath",(["start","end","radius","params"],"Returns a list of position vectors indicating pathfinding waypoints between positions at start and end, for a character of a given radius\n")),
    ("llGetStatus",(["status"],"Returns value of status (STATUS_PHYSICS, STATUS_PHANTOM, STATUS_BLOCK_GRAB, STATUS_ROTATE_X, STATUS_ROTATE_Y, and/or STATUS_ROTATE_Z)\n")),
    ("llGetSubString",(["src","start","end"],"Returns the indicated substring\n")),
    ("llGetSunDirection",([],"Returns a normalized vector of the direction of the sun in the region\n")),
    ("llGetTexture",(["face"],"Returns a string that is the texture on face (the inventory name if it is a texture in the prim's inventory, otherwise the key)\n")),
    ("llGetTextureOffset",(["face"],"Returns the texture offset of face in the x and y components of a vector\n")),
    ("llGetTextureRot",(["side"],"Returns the texture rotation of side\n")),
    ("llGetTextureScale",(["side"],"Returns the texture scale of side in the x and y components of a vector\n")),
    ("llGetTime",([],"Returns the time in seconds since the last region reset, script reset, or call to either llResetTime or llGetAndResetTime\n")),
    ("llGetTimeOfDay",([],"Returns the time in seconds since [CURRENT_GRID] server midnight or since region up-time, whichever is smaller\n")),
    ("llGetTimestamp",([],"Returns the timestamp in the UTC time zone in the format: YYYY-MM-DDThh:mm:ss.ff..fZ\n")),
    ("llGetTorque",([],"Returns the torque (if the script is physical)\n")),
    ("llGetUnixTime",([],"Returns the number of seconds elapsed since 00:00 hours, Jan 1, 1970 UTC from the system clock\n")),
    ("llGetUsedMemory",([],"Returns the current used memory for the current script. Non-mono scripts always use 16k.\n")),
    ("llGetUsername",(["id"],"Returns the single-word username of an avatar, iff the avatar is in the current region, otherwise the empty string\n")),
    ("llGetVel",([],"Returns the velocity of the object\n")),
    ("llGetWallclock",([],"Returns the time in seconds since midnight California Pacific time (PST/PDT)\n")),
    ("llGiveInventory",(["destination","inventory"],"Gives inventory to destination.\nSleeps script for 2 seconds if destination is an avatar.\n")),
    ("llGiveInventoryList",(["target","folder","inventory"],"Gives inventory items to target, creating a new folder to put them in\n")),
    ("llGiveMoney",(["destination","amount"],"Transfers amount of L$ from script owner to destination\n")),
    ("llGround",(["offset"],"Returns the ground height below the object position + offset\n")),
    ("llGroundContour",(["offset"],"Returns the ground contour direction below the object position + offset\n")),
    ("llGroundNormal",(["offset"],"Returns the ground normal below the object position + offset\n")),
    ("llGroundRepel",(["height","water","tau"],"Critically damps to height if within height*0.5 of level (either above ground level, or above the higher of land and water if water == TRUE)\n")),
    ("llGroundSlope",(["offset"],"Returns the ground slope below the object position + offset\n")),
    ("llHTTPRequest",(["url","parameters","body"],"Sends an HTTP request to the specified url with the body of the request and parameters\n")),
    ("llHTTPResponse",(["request_id","status","body"],"Responds to request_id with status and body\n")),
    ("llInsertString",(["dst","position","src"],"Returns a destination string dst with the string src inserted starting at position pos\n")),
    ("llInstantMessage",(["user","message"],"Sends the specified string as an Instant Message to the user\n")),
    ("llIntegerToBase64",(["number"],"Returns a string that is a Base64 big endian encode of number\n")),
    ("llJson2List",(["json"],"Converts the top level of the json string to a list\n")),
    ("llJsonGetValue",(["json","specifiers"],"Gets the value indicated by specifiers from the json string\n")),
    ("llJsonSetValue",(["json","specifiers","value"],"Returns a new json string that is the json given with the value indicated by specifiers set to value \n")),
    ("llJsonValueType",(["json","specifiers"],"Returns the type constant for the value in json indicated by specifiers\n")),
    ("llKey2Name",(["id"],"Returns the name of the prim or avatar specified by id.\n(The id must be a valid rezzed prim or avatar key in the current simulator, otherwise an empty string is returned.)\n")),
    ("llLinkParticleSystem",(["linknumber","rules"],"Creates a particle system based on rules. Empty list removes particle system from object.\nList format is [ rule1, data1, rule2, data2 ... rulen, datan ].\n")),
    ("llLinkSitTarget",(["link","offset","rot"],"Set the sit location for this object (if offset == <0,0,0> clear it)\n")),
    ("llList2CSV",(["src"],"Creates a string of comma separated values from list\n")),
    ("llList2Float",(["src","index"],"Copies the float at index in the list\n")),
    ("llList2Integer",(["src","index"],"Copies the integer at index in the list\n")),
    ("llList2Json",(["type","values"],"Converts either a strided list of key:value pairs to a JSON_OBJECT or a list of values to a JSON_ARRAY. type must be either JSON_OBJECT or JSON_ARRAY.\n")),
    ("llList2Key",(["src","index"],"Copies the key at index in the list\n")),
    ("llList2List",(["src","start","end"],"Copies the slice of the list from start to end\n")),
    ("llList2ListStrided",(["src","start","end","stride"],"Copies the strided slice of the list from start to end\n")),
    ("llList2Rot",(["src","index"],"Copies the rotation at index in the list\n")),
    ("llList2String",(["src","index"],"Copies the string at index in the list\n")),
    ("llList2Vector",(["src","index"],"Copies the vector at index in the list\n")),
    ("llListFindList",(["src","test"],"Returns the index of the first instance of test in src.\n(Returns -1 if not found.)\n")),
    ("llListInsertList",(["dest","src","start"],"Returns a list that contains all the elements from dest but with the elements from src inserted at position start\n")),
    ("llListRandomize",(["src","stride"],"Returns a randomized list of blocks of size stride\n")),
    ("llListReplaceList",(["dest","src","start","end"],"Returns a list that is dest with start through end removed and src inserted at start\n")),
    ("llListSort",(["src","stride","ascending"],"Sorts the list into blocks of stride, in ascending order if ascending == TRUE.\nThe sort order is affected by type.\n")),
    ("llListStatistics",(["operation","src"],"Performs statistical aggregate functions on list src using LIST_STAT_* operations\n")),
    ("llListen",(["channel","name","id","msg"],"Sets a callback for msg on channel from name and id (name, id, and/or msg can be empty) and returns an identifier that can be used to deactivate or remove the listen\n")),
    ("llListenControl",(["number","active"],"Makes a listen event callback active or inactive\n")),
    ("llListenRemove",(["number"],"Removes listen event callback number\n")),
    ("llLoadURL",(["avatar","message","url"],"Shows a dialog to avatar offering to load the web page at url with a message.\nIf user clicks yes, launches the page in their web browser.\n")),
    ("llLog",(["val"],"Returns the natural logarithm of val. Returns zero if val <= 0.\n")),
    ("llLog10",(["val"],"Returns the base 10 logarithm of val. Returns zero if val <= 0.\n")),
    ("llLookAt",(["target","strength","damping"],"Causes object to point its up axis (positive z) towards target, while keeping its forward axis (positive x) below the horizon\n")),
    ("llLoopSound",(["sound","volume"],"Plays attached sound looping indefinitely at volume (0.0 - 1.0)\n")),
    ("llLoopSoundMaster",(["sound","volume"],"Plays attached sound looping at volume (0.0 - 1.0), declares it a sync master\n")),
    ("llLoopSoundSlave",(["sound","volume"],"Plays attached sound looping at volume (0.0 - 1.0), synced to most audible sync master\n")),
    ("llMD5String",(["src","nonce"],"Returns a string of 32 hex characters that is a RSA Data Security, Inc. MD5 Message-Digest Algorithm of src with nonce\n")),
    ("llMakeExplosion",(["particles","scale","vel","lifetime","arc","texture","offset"],"(DEPRECATED) Makes a round explosion of particles\n")),
    ("llMakeFire",(["particles","scale","vel","lifetime","arc","texture","offset"],"(DEPRECATED) Makes fire like particles\n")),
    ("llMakeFountain",(["particles","scale","vel","lifetime","arc","bounce","texture","offset","bounce_offset"],"(DEPRECATED) Makes a fountain of particles\n")),
    ("llMakeSmoke",(["particles","scale","vel","lifetime","arc","texture","offset"],"(DEPRECATED) Makes smoke like particles\n")),
    ("llManageEstateAccess",(["action","id"],"To add or remove agents from the estate's agent access or ban lists or groups from the estate's group access list.\nOnly works for objects owned by the Estate Owner or an Estate Manager.\nReturns TRUE if successful and FALSE if throttled, on invalid action, on invalid or null id, or if object owner is not allowed to manage the estate.\n'action' can be any of: ESTATE_ACCESS_ALLOWED_[AGENT/GROUP]_[ADD/REMOVE] or ESTATE_ACCESS_BANNED_AGENT_[ADD/REMOVE].\n")),
    ("llMapDestination",(["simname","pos","look_at"],"Opens the World Map centered on the region simname with pos highlighted. (NOTE: look_at currently does nothing.)\nOnly works for scripts attached to avatar, or during touch events.\n")),
    ("llMessageLinked",(["linknum","num","str","id"],"Allows scripts in the same object to communicate. Triggers a link_message event with the same parameters num, str, and id in all scripts in the prim(s) described by linknum.\n")),
    ("llMinEventDelay",(["delay"],"Sets the minimum time between events being handled\n")),
    ("llModPow",(["a","b","c"],"Returns a raised to the b power, mod c. ( (a**b)%c )\nb is capped at 0xFFFF (16 bits).\n")),
    ("llModifyLand",(["action","brush"],"Modifies land using the specified action on the specified brush size of land\n")),
    ("llMoveToTarget",(["target","tau"],"Critically damps to target in tau seconds (if the script is physical)\n")),
    ("llNavigateTo",(["point","options"],"For AI Character: Navigate to destination\n")),
    ("llOffsetTexture",(["u","v","face"],"Sets the texture u  & v offsets for the chosen face or ALL_SIDES\n")),
    ("llOpenRemoteDataChannel",([],"Creates a channel to listen for XML-RPC calls, and will trigger a remote_data event with channel id once it is available\n")),
    ("llOverMyLand",(["id"],"Returns TRUE if id is over land owned by the script owner, otherwise FALSE\n")),
    ("llOwnerSay",(["msg"],"Says msg to owner only. (Owner must be in the same region.)\n")),
    ("llParcelMediaCommandList",(["command"],"Sends a list of commands, some with arguments, to a parcel to control the playback of movies and other media\n")),
    ("llParcelMediaQuery",(["query"],"Returns a list containing results of the sent query\n")),
    ("llParseString2List",(["src","separators","spacers"],"Breaks src into a list, discarding separators, keeping spacers\n(separators and spacers must be lists of strings, maximum of 8 each)\n")),
    ("llParseStringKeepNulls",(["src","separators","spacers"],"Breaks src into a list, discarding separators, keeping spacers, keeping any null values generated (separators and spacers must be lists of strings, maximum of 8 each)\n")),
    ("llParticleSystem",(["rules"],"Creates a particle system based on rules. An empty list removes the particle system.\nList format is [ rule1, data1, rule2, data2 ... rulen, datan ].\n")),
    ("llPassCollisions",(["pass"],"If pass == TRUE, collisions are passed from children on to parents (default is FALSE)\n")),
    ("llPassTouches",(["pass"],"If pass == TRUE, touches are passed from children on to parents\n")),
    ("llPatrolPoints",(["points","options"],"For AI Character: Patrol a list of points\n")),
    ("llPlaySound",(["sound","volume"],"Plays attached sound once at volume (0.0 - 1.0)\n")),
    ("llPlaySoundSlave",(["sound","volume"],"Plays attached sound once at volume (0.0 - 1.0), synced to next loop of most audible sync master\n")),
    ("llPointAt",(["pos"],"Makes agent that owns object point at pos\n")),
    ("llPow",(["base","exponent"],"Returns the base raised to the power exponent, or returns 0 and triggers Math Error for imaginary results\n")),
    ("llPreloadSound",(["sound"],"Preloads a sound on viewers within range\n")),
    ("llPursue",(["target","options"],"For AI Character: Chase after a target\n")),
    ("llPushObject",(["id","impulse","ang_impulse","local"],"Applies impulse and ang_impulse to object id\n")),
    ("llRefreshPrimURL",([],"Reloads the web page shown on the sides of the object\n")),
    ("llRegionSay",(["channel","msg"],"Broadcasts msg on channel (not 0) that can be heard anywhere in the region by a script listening on channel\n")),
    ("llRegionSayTo",(["target","channel","msg"],"Sends msg on channel (not DEBUG_CHANNEL) directly to prim or avatar target anywhere within the region\n")),
    ("llReleaseCamera",(["avatar"],"Returns camera to agent avatar\n")),
    ("llReleaseControls",([],"Stops taking inputs that were taken with llTakeControls\n")),
    ("llReleaseURL",(["url"],"Releases the specified URL, it will no longer be usable\n")),
    ("llRemoteDataReply",(["channel","message_id","sdata","idata"],"Sends an XML-RPC reply to message_id on channel with payload of string sdata and integer idata\n")),
    ("llRemoteDataSetRegion",([],"DEPRECATED!  Please use llOpenRemoteDataChannel instead.\nIf an object using remote data channels changes regions, you must call this function to reregister the remote data channels. This call is not needed if the prim does not change regions.\n")),
    ("llRemoteLoadScript",(["target","name","running","start_param"],"DEPRECATED!  Please use llRemoteLoadScriptPin instead.\n")),
    ("llRemoteLoadScriptPin",(["target","name","pin","running","start_param"],"Copies script name onto target, if the owner of this scripted object can modify target and is in the same region, and the matching pin is used.\nIf running == TRUE, starts the script with start_param.\n")),
    ("llRemoveFromLandBanList",(["avatar"],"Removes avatar from the land ban list\n")),
    ("llRemoveFromLandPassList",(["avatar"],"Removes avatar from the land pass list\n")),
    ("llRemoveInventory",(["item"],"Removes the named inventory item\n")),
    ("llRemoveVehicleFlags",(["flags"],"Removes the enabled bits in 'flags'\n")),
    ("llRequestAgentData",(["id","data"],"Requests data about agent id. When data is available the dataserver event will be raised.\n")),
    ("llRequestDisplayName",(["id"],"Requests name of an avatar. When data is available the dataserver event will be raised.\n")),
    ("llRequestInventoryData",(["name"],"Requests data from object's inventory object. When data is available the dataserver event will be raised.\n")),
    ("llRequestPermissions",(["agent","perm"],"Asks the agent for permission to run certain classes of functions\n")),
    ("llRequestSecureURL",([],"Requests one HTTPS:// (SSL) url for use by this object.\nAn http_request event is triggered with the results.\n")),
    ("llRequestSimulatorData",(["simulator","data"],"Requests data about simulator. When data is available the dataserver event will be raised.\n")),
    ("llRequestURL",([],"Requests one HTTP:// url for use by this object.\nAn http_request event is triggered with the results.\n")),
    ("llRequestUsername",(["id"],"Requests single-word username of an avatar. When data is available the dataserver event will be raised.\n")),
    ("llResetAnimationOverride",(["anim_state"],"Resets the animation for the given animation state to the default. The special value \"ALL\" will reset the animations for all states. Requires PERMISSION_OVERRIDE_ANIMATIONS.\n")),
    ("llResetLandBanList",([],"Removes all Residents from the land ban list\n")),
    ("llResetLandPassList",([],"Removes all Residents from the land access/pass list\n")),
    ("llResetOtherScript",(["name"],"Resets script name\n")),
    ("llResetScript",([],"Resets the script\n")),
    ("llResetTime",([],"Sets the script timer to zero\n")),
    ("llReturnObjectsByID",(["objects"],"(No Description)\n")),
    ("llReturnObjectsByOwner",(["owner","scope"],"(No Description)\n")),
    ("llRezAtRoot",(["inventory","pos","vel","rot","param"],"Instantiates owner's inventory object rotated to rot with its root at pos, moving at vel, using param as the start parameter\n")),
    ("llRezObject",(["inventory","pos","vel","rot","param"],"Instantiates owner's inventory object at pos with velocity vel and rotation rot with start parameter param\n")),
    ("llRot2Angle",(["rot"],"Returns the rotation angle represented by rot\n")),
    ("llRot2Axis",(["rot"],"Returns the rotation axis represented by rot\n")),
    ("llRot2Euler",(["q"],"Returns the Euler representation (roll, pitch, yaw) of q\n")),
    ("llRot2Fwd",(["q"],"Returns the forward vector defined by q\n")),
    ("llRot2Left",(["q"],"Returns the left vector defined by q\n")),
    ("llRot2Up",(["q"],"Returns the up vector defined by q\n")),
    ("llRotBetween",(["v1","v2"],"Returns the rotation to rotate v1 to v2\n")),
    ("llRotLookAt",(["target","strength","damping"],"Causes object to point its forward axis towards target\n")),
    ("llRotTarget",(["rot","error"],"Set rotations with error of rot as a rotational target and return an ID for the rotational target\n")),
    ("llRotTargetRemove",(["number"],"Removes rotational target number registered with llRotTarget\n")),
    ("llRotateTexture",(["angle","face"],"Sets the texture rotation for the chosen face\n")),
    ("llRound",(["val"],"Returns val rounded to the nearest integer\n")),
    ("llSHA1String",(["src"],"Returns a string of 40 hex characters that is the SHA1 security Hash of src\n")),
    ("llSameGroup",(["id"],"Returns TRUE if avatar id is in the same region and has the same active group, otherwise FALSE\n")),
    ("llSay",(["channel","msg"],"Says the text of msg on channel\n")),
    ("llScaleByFactor",(["scaling_factor"],"(No Description)\n")),
    ("llScaleTexture",(["u","v","face"],"Sets the texture u & v scales for the chosen face or ALL_SIDES\n")),
    ("llScriptDanger",(["pos"],"Returns TRUE if pos is over public land, sandbox land, land that doesn't allow everyone to edit and build, or land that doesn't allow outside scripts\n")),
    ("llScriptProfiler",(["flags"],"Enabled or disables script profiling options. Currently only supports PROFILE_SCRIPT_MEMORY (mono only) and PROFILE_NONE.\nMAY SIGNIFICANTLY REDUCE SCRIPT PERFORMANCE!\n")),
    ("llSendRemoteData",(["channel","dest","idata","sdata"],"Sends an XML-RPC request to dest through channel with payload of channel (in a string), integer idata and string sdata.\nReturns a key that is the message_id for the resulting remote_data events.\n")),
    ("llSensor",(["name","id","type","range","arc"],"Performs a single scan for name and id with type (AGENT, ACTIVE, PASSIVE, and/or SCRIPTED) within range meters and arc radians of forward vector (name, id, and/or keytype can be empty or 0)\n")),
    ("llSensorRemove",([],"Removes the sensor setup by llSensorRepeat\n")),
    ("llSensorRepeat",(["name","id","type","range","arc","rate"],"Sets a callback for name and id with type (AGENT, ACTIVE, PASSIVE, and/or SCRIPTED) within range meters and arc radians of forward vector (name, id, and/or keytype can be empty or 0) and repeats every rate seconds\n")),
    ("llSetAlpha",(["alpha","face"],"Sets the alpha on face\n")),
    ("llSetAngularVelocity",(["angular_velocity","local"],"Sets an objects angular velocity, in local coords if local == TRUE (if the script is physical)\n")),
    ("llSetAnimationOverride",(["anim_state","anim"],"Set the animation that will play for the given animation state. Requires PERMISSION_OVERRIDE_ANIMATIONS.\n")),
    ("llSetBuoyancy",(["buoyancy"],"Sets the buoyancy of the task or object (0 is disabled, < 1.0 sinks, 1.0 floats, > 1.0 rises)\n")),
    ("llSetCameraAtOffset",(["offset"],"Sets the point the camera is looking at to offset for avatars that sit on the object\n")),
    ("llSetCameraEyeOffset",(["offset"],"Sets the camera eye offset for avatars that sit on the object\n")),
    ("llSetCameraParams",(["rules"],"Sets multiple camera parameters at once.\nList format is [ rule1, data1, rule2, data2 ... rulen, datan ].\n")),
    ("llSetClickAction",(["action"],"Sets the action performed when a prim is clicked upon\n")),
    ("llSetColor",(["color","face"],"Sets the color on face of the prim\n")),
    ("llSetContentType",(["request_id","content_type"],"Set the Internet media type of an LSL HTTP server response.\ncontent_type may be one of CONTENT_TYPE_TEXT (default) \"text/plain\", or CONTENT_TYPE_HTML \"text/html\", only valid for embedded browsers on content owned by the person viewing. Falls back to \"text/plain\" otherwise.\n")),
    ("llSetDamage",(["damage"],"Sets the amount of damage that will be done when this object hits an avatar\n")),
    ("llSetForce",(["force","local"],"Applies force to the object (if the script is physical), in local coords if local == TRUE\n")),
    ("llSetForceAndTorque",(["force","torque","local"],"Sets the force and torque of object (if the script is physical), in local coords if local == TRUE\n")),
    ("llSetHoverHeight",(["height","water","tau"],"Critically damps to a height above the ground (or water) in tau seconds\n")),
    ("llSetKeyframedMotion",(["keyframes","options"],"Requests that a nonphysical object be keyframed according to keyframe list\n")),
    ("llSetLinkAlpha",(["linknumber","alpha","face"],"If a prim exists in the link chain at linknumber, sets face to alpha\n")),
    ("llSetLinkCamera",(["link","eye","at"],"Sets the camera eye offset, and the offset that camera is looking at, for avatars that sit on the linked prim.\nThe two vector parameters are offsets relative to the object's center and expressed in local coordinates.\n")),
    ("llSetLinkColor",(["linknumber","color","face"],"Sets face to color if a task exists in the link chain at linknumber\n")),
    ("llSetLinkMedia",(["link","face","params"],"Set the media params for a particular face on linked prim. List is a set of name/value pairs (in no particular order). If media is not already on this object, add it. Params not specified are unchanged, or if new media is added set to the default specified.\n")),
    ("llSetLinkPrimitiveParams",(["linknumber","rules"],"Sets primitive parameters for linknumber based on rules\n")),
    ("llSetLinkPrimitiveParamsFast",(["linknumber","rules"],"Set primitive parameters for linknumber based on rules\n")),
    ("llSetLinkTexture",(["linknumber","texture","face"],"Sets the texture of face for a task that exists in the link chain at linknumber\n")),
    ("llSetLinkTextureAnim",(["link","mode","face","sizex","sizey","start","length","rate"],"Animate the texture on the specified prim's face/faces\n")),
    ("llSetLocalRot",(["rot"],"Sets the rotation of a child prim relative to the root prim\n")),
    ("llSetMemoryLimit",(["limit"],"Request limit bytes to be reserved for this script.\nReturns a success/failure flag (STATUS_OK when sucessful, another of the STATUS_* flags on failure) for whether the memory limit was set.\nOnly relevant for Mono-compiled scripts.\n")),
    ("llSetObjectDesc",(["desc"],"Sets the prim's description to desc\n")),
    ("llSetObjectName",(["name"],"Sets the prim's name to the name parameter\n")),
    ("llSetParcelMusicURL",(["url"],"Sets the streaming audio URL for the parcel which the object is on\n")),
    ("llSetPayPrice",(["price","quick_pay_buttons"],"Sets the default amount on the dialog that appears when someone chooses to pay this prim\n")),
    ("llSetPhysicsMaterial",(["flags","gravity_multiplier","restitution","friction","density"],"Sets the requested attributes of the root object's physics material\n")),
    ("llSetPos",(["pos"],"Moves the object or prim towards pos without using physics (if the script isn't physical)\n")),
    ("llSetPrimMediaParams",(["face","params"],"Sets the media params for a particular face on an object. If media is not already on this object, add it.\nList is a set of name/value pairs in no particular order. Params not specified are unchanged, or if new media is added then set to the default specified.\n")),
    ("llSetPrimURL",(["url"],"Updates the URL for the web page shown on the sides of the object\n")),
    ("llSetPrimitiveParams",(["rules"],"Sets the prim's parameters according to rules\n")),
    ("llSetRegionPos",(["pos"],"Sets the position anywhere within the region (if the object isn't physical)\n")),
    ("llSetRemoteScriptAccessPin",(["pin"],"If pin is set to a non-zero number, allows a prim to have scripts remotely loaded via llRemoteLoadScriptPin when it passes in the correct pin. Otherwise, llRemoteLoadScriptPin is ignored.\n")),
    ("llSetRot",(["rot"],"Sets the rotation\n")),
    ("llSetScale",(["scale"],"Sets the scale of the prim\n")),
    ("llSetScriptState",(["name","run"],"Sets the running state of the specified script\n")),
    ("llSetSitText",(["text"],"Displays text rather than the default 'Sit Here' in the pie menu\n")),
    ("llSetSoundQueueing",(["queue"],"Sets whether attached sounds wait for the current sound to finish (If queue == TRUE then queuing is enabled, if FALSE queuing is disabled [default])\n")),
    ("llSetSoundRadius",(["radius"],"Establishes a hard cut-off radius for audibility of scripted sounds (both attached and triggered)\n")),
    ("llSetStatus",(["status","value"],"Sets status (STATUS_PHYSICS, STATUS_PHANTOM, STATUS_BLOCK_GRAB, STATUS_ROTATE_X, STATUS_ROTATE_Y, and/or STATUS_ROTATE_Z) to value\n")),
    ("llSetText",(["text","color","alpha"],"Displays text that hovers over the prim with specific color and translucency specified with alpha\n")),
    ("llSetTexture",(["texture","face"],"Sets the texture of face or ALL_SIDES\n")),
    ("llSetTextureAnim",(["mode","face","sizex","sizey","start","length","rate"],"Animates the texture on the specified face/faces\n")),
    ("llSetTimerEvent",(["sec"],"Causes the timer event to be triggered a maximum of once every sec seconds\n")),
    ("llSetTorque",(["torque","local"],"Sets the torque of object (if the script is physical), in local coords if local == TRUE\n")),
    ("llSetTouchText",(["text"],"Displays text rather than the default 'Touch' in the pie menu\n")),
    ("llSetVehicleFlags",(["flags"],"Sets the enabled bits in 'flags'\n")),
    ("llSetVehicleFloatParam",(["param","value"],"Sets the specified vehicle float parameter\n")),
    ("llSetVehicleRotationParam",(["param","rot"],"Sets the specified vehicle rotation parameter\n")),
    ("llSetVehicleType",(["type"],"Sets the vehicle to one of the default types\n")),
    ("llSetVehicleVectorParam",(["param","vec"],"Sets the specified vehicle vector parameter\n")),
    ("llSetVelocity",(["velocity","local"],"Sets an objects velocity, in local coords if local == TRUE (if the script is physical)\n")),
    ("llShout",(["channel","msg"],"Shouts the text of msg on channel\n")),
    ("llSin",(["theta"],"Returns the sine of theta (theta in radians)\n")),
    ("llSitTarget",(["offset","rot"],"Sets the sit location for the prim. If offset == <0,0,0> then the sit target is removed.\n")),
    ("llSleep",(["sec"],"Puts the script to sleep for sec seconds\n")),
    ("llSound",(["sound","volume","queue","loop"],"Plays sound at volume and whether it should loop or not. DEPRECATED - Use llPlaySound / llLoopSound / llSetSoundQueueing.\n")),
    ("llSoundPreload",(["sound"],"Preloads a sound on viewers within range. DEPRECATED - Use llPreloadSound.\n")),
    ("llSqrt",(["val"],"Returns the square root of val, or returns 0 and triggers a Math Error for imaginary results\n")),
    ("llStartAnimation",(["anim"],"Starts animation anim for agent that granted PERMISSION_TRIGGER_ANIMATION if the permission has not been revoked\n")),
    ("llStopAnimation",(["anim"],"Stops animation anim for agent that granted permission\n")),
    ("llStopHover",([],"Stops hovering to a height\n")),
    ("llStopLookAt",([],"Stops causing object to point at a target\n")),
    ("llStopMoveToTarget",([],"Stops critically damped motion\n")),
    ("llStopPointAt",([],"Stops pointing agent that owns object\n")),
    ("llStopSound",([],"Stops currently attached sound\n")),
    ("llStringLength",(["str"],"Returns the length of string\n")),
    ("llStringToBase64",(["str"],"Converts a string to the Base64 representation of the string\n")),
    ("llStringTrim",(["src","trim_type"],"Trims the leading and/or trailing white spaces from a string.\ntrim_type can be STRING_TRIM, STRING_TRIM_HEAD or STRING_TRIM_TAIL.\n")),
    ("llSubStringIndex",(["source","pattern"],"Returns an integer that is the index in source where pattern first appears.\n(Returns -1 if not found.)\n")),
    ("llTakeCamera",(["avatar"],"Moves avatar's viewpoint to task\n")),
    ("llTakeControls",(["controls","accept","pass_on"],"Allows for intercepting keyboard and mouse clicks from the agent the script has permissions for\n")),
    ("llTan",(["theta"],"Returns the tangent of theta (theta in radians)\n")),
    ("llTarget",(["position","range"],"Sets positions within range of position as a target and return an ID for the target\n")),
    ("llTargetOmega",(["axis","spinrate","gain"],"Rotates the object around axis at spinrate with strength gain\n")),
    ("llTargetRemove",(["number"],"Removes positional target number registered with llTarget\n")),
    ("llTeleportAgent",(["avatar","landmark","position","look_at"],"Requests a teleport of avatar to a landmark stored in the object's inventory. If no landmark is provided (an empty string), the avatar is teleported to the location position in the current region. In either case, the avatar is turned to face the position given by look_at in local coordinates.\n")),
    ("llTeleportAgentGlobalCoords",(["agent","global_coordinates","region_coordinates","look_at"],"Teleports an agent to set of a region_coordinates within a region at the specified global_coordinates. The agent lands facing the position defined by look_at local coordinates.\nA region's global coordinates can be retrieved using llRequestSimulatorData(region_name, DATA_SIM_POS).\n")),
    ("llTeleportAgentHome",(["id"],"Teleports avatar on the owner's land to their home location without any warning\n")),
    ("llTextBox",(["avatar","message","chat_channel"],"Shows a window on the avatar's screen with the message.\nIt contains a text box for input, and if entered that text is chatted on chat_channel.\n")),
    ("llToLower",(["src"],"Returns a string that is src with all lower-case characters\n")),
    ("llToUpper",(["src"],"Returns a string that is src with all upper-case characters\n")),
    ("llTransferLindenDollars",(["destination","amount"],"Transfer amount of linden dollars (L$) from script owner to destination. Returns a key to a corresponding transaction_result event for the success of the transfer.\n")),
    ("llTriggerSound",(["sound","volume"],"Plays sound at volume (0.0 - 1.0), centered at but not attached to object\n")),
    ("llTriggerSoundLimited",(["sound","volume","top_north_east","bottom_south_west"],"Plays sound at volume (0.0 - 1.0), centered at but not attached to object, limited to the box defined by vectors top_north_east and bottom_south_west\n")),
    ("llUnSit",(["id"],"If avatar identified by id is sitting on the object the script is attached to or is over land owned by the object's owner, the avatar is forced to stand up\n")),
    ("llUnescapeURL",(["url"],"Returns an unescaped/ unencoded version of url, replacing %20 with spaces etc.\n")),
    ("llUpdateCharacter",(["options"],"Change the AI Character's settings\n")),
    ("llVecDist",(["v1","v2"],"Returns the 3D distance between v1 and v2\n")),
    ("llVecMag",(["v"],"Returns the magnitude of v\n")),
    ("llVecNorm",(["v"],"Returns the v normalized\n")),
    ("llVolumeDetect",(["detect"],"If detect = TRUE, object works much like Phantom, but triggers collision_start and collision_end events when other objects start and stop interpenetrating.\nMust be applied to the root prim.\n")),
    ("llWanderWithin",(["center","radius","options"],"For AI Character: Wander within a specified volume\n")),
    ("llWater",(["offset"],"Returns the water height below the object position + offset\n")),
    ("llWhisper",(["channel","msg"],"Whispers the text of msg on channel\n")),
    ("llWind",(["offset"],"Returns the wind velocity at the object position + offset\n")),
    ("llXorBase64",(["str1","str2"],"Performs an exclusive or on two Base64 strings and returns a Base64 string.\nstr2 repeats if it is shorter than str1.\n")),
    ("llXorBase64Strings",(["str1","str2"],"DEPRECATED!  Please use llXorBase64 instead.\nIncorrectly performs an exclusive or on two Base64 strings and returns a Base64 string. str2 repeats if it is shorter than str1. Retained for backwards compatability.\n")),
    ("llXorBase64StringsCorrect",(["str1","str2"],"DEPRECATED! Please use llXorBase64 instead.\nIncorrectly performs an exclusive or on two Base64 strings and returns a Base64 string.\nstr2 repeats if it is shorter than str1. Retained for backwards compatability.\n"))
    ]
